Localizzazione è in generale il processo che fornisce un software con una interfaccia utente (GUI) multilingua. In FreeCAD è possibile impostare la lingua dell'interfaccia utente in Modifica → Preferenze → Generale. FreeCAD utilizza Qt per abilitare il supporto di più lingue. Sui sistemi Unix / Linux, FreeCAD utilizza le impostazioni locali di default del sistema.
Una cosa molto importante che gli utenti possono fare per contribuire a FreeCAD (se per esempio non hanno competenze di programmazione) è quella di aiutare a tradurre i suoi diversi aspetti (codice sorgente, wiki, sito Web, documentazione ecc.) in un'altra lingua. Ecco i modi per farlo.
FreeCAD utilizza un sistema di traduzione in linea collaborativo di terze parti chiamato Crowdin.
È un software proprietario ma gratuito per i progetti FOSS. Sotto ci sono le istruzioni su come usarlo:
.
Nota: I dettagli su come utilizzare crowdin possono essere trovati nella pagina Amministrazione di Crowdin.
Vedere Traduzione di un ambiente esterno.
A partire da FreeCAD 0.20, le seguenti variabili possono essere aggiunte manualmente alla sezione BaseApp/Preferences/General del file user.cfg per facilitare lo sviluppo di nuove traduzioni:
AdditionalLanguageDomainEntries - per aggiungere lingue completamente nuove a FreeCAD, che non sono attualmente supportate dal codice sorgente, è possibile utilizzare questa preferenza utente per aggiungere all'elenco delle lingue disponibili. Il formato delle lingue è "Language Name"="codice"; Per esempio:
<FCText Name="AdditionalLanguageDomainEntries">"Esperanto"="eo";"French"="fr";</FCText>
AdditionalTranslationsDirectory - aggiunge una directory aggiuntiva per FreeCAD per cercare i file *.qm. Questa posizione avrà la precedenza su $userAppDataDir/translations e $resourceDir/translations. Per esempio:
<FCText Name="AdditionalTranslationsDirectory">C:/Users/FreeCADUser/TestTranslations</FCText>
Questo wiki ospita molti contenuti, la maggior parte dei quali costruisce il manuale. È possibile sfogliare la documentazione a partire dalla Pagina principale, o dare un'occhiata al Sommario del manuale utente.
Per tradurre il wiki, si deve disporre dei permessi di modifica del wiki; vedere Come si può ottenere il permesso di modificare il wiki?.
È necessario avere una conoscenza di base sulla formattazione dello stile wiki e sulle linee guida generali del wiki di FreeCAD, perché durante la traduzione bisogna sapere cosa fare con alcuni tag. Potete trovare queste informazioni in WikiPages (en).
Quando il Wiki è stato spostato da SourceForge, Yorik ha installato un MediaWiki's plugin di traduzione che facilita la traduzione delle pagine. I vantaggi del plugin di traduzione sono che, ad esempio, ora può essere tradotto anche il titolo della pagina, che tiene traccia delle traduzioni, notifica se la pagina originale è stata aggiornata, e mantiene le traduzioni sincronizzate con la pagina originale inglese.
Lo strumento è documentato in Help:Extension:Translate, ed è parte di MediaWiki Language Extension Bundle.
Per sapere come preparare rapidamente una pagina per la traduzione e attivare il plugin, si prega di leggere Page translation example. Una coppia di tag deve contenere l'intera pagina per attivare il sistema di traduzione:
<translate> ... </translate>
La pagina deve anche essere contrassegnata per la traduzione.
Per vedere un esempio di come funziona lo strumento di traduzione, visitare la Pagina principale. Si vedrà una barra della lingua generata automaticamente in alto. Cliccare su Deutsch (tedesco), si andrà a Main_Page/de. Proprio sotto il titolo, "Hauptseite" (in inglese "Main Page"), si può leggere Questa pagina è una versione tradotta della pagina Pagina principale e la traduzione è completa al XX%, XX è la percentuale corrente di traduzione. Fare clic su "Traduci" nella parte superiore della pagina per avviare l'utilità di traduzione per aggiornare, correggere e rivedere la traduzione esistente.
Ora se si va nella Pagina Principale, si nota che quando la pagina viene contrassegnata per la traduzione non è possibile modificarla direttamente, ma si deve passare attraverso l'utility di traduzione.
Quando si aggiungono nuovi contenuti, prima deve essere creata la pagina inglese, e poi la pagina inglese può essere tradotta in un'altra lingua. Se qualcuno vuole cambiare o aggiungere dei contenuti in una pagina esistente, deve farlo nella pagina inglese, marcarla per la traduzione e poi tradurre i contenuti editati.
Se non siete sicuri su come procedere, non esitate a chiedere aiuto nel Development → Wiki subforum o nel specific language subforum del FreeCAD forum.
Ogni utente del wiki che dispone delle autorizzazioni "Editor" è in grado di avviare l'utilità di traduzione per scrivere, salvare e rivedere le traduzioni.
Tuttavia, solo gli utenti con permessi di "Amministratore" possono contrassegnare le pagine per la traduzione. Una pagina che non è stata contrassegnata per la traduzione non fa uso dell'estensione di traduzione e non è sincronizzata correttamente con le informazioni in inglese.
Anche la barra laterale (il menu di navigazione a sinistra) è traducibile, ma solo gli amministratori possono modificare questo elemento del sito. Si prega di seguire le istruzioni dedicate a questo nella pagina Tradurre la Sidebar.
La prima volta che una pagina viene passata al nuovo sistema di traduzione perde tutte le sue vecchie traduzioni "manuali". Per recuperare una traduzione, bisogna salvare una copia offline del vecchio testo prima della conversione. Quindi si può usare questo vecchio testo tradotto per riempire le unità di traduzione nel nuovo sistema. Si può anche aprire una versione precedente dalla cronologia (pulsante History) e ottenere il vecchio testo in questo modo. Questo deve essere fatto per ogni lingua che ha una pagina tradotta.
Come da consenso generale, la pagina di riferimento nel wiki è la pagina inglese, che dovrebbe essere creata per prima. Se si desidera modificare o aggiungere contenuto a una pagina, è necessario farlo prima alla pagina inglese e solo una volta completato l'aggiornamento, portare la modifica nella pagina tradotta.
Queste istruzioni sono solo un background storico, mentre le pagine vengono passate al nuovo plugin di traduzione. |
Il primo passo è controllare se è già stata avviata la traduzione del manuale per la propria lingua (cercare nella barra laterale sinistra, sotto "manual").
Convenzioni sui nomi delle pagine
#REDIRECT [[About FreeCAD/fr]]
{{docnav/fr|Bienvenue sur l'aide en ligne|Fonctionnalités}} La pagina "Bienvenue sur l'aide en ligne" reindirizza a Online Help Startpage/fr, e la pagina "Fonctionnalités" reindirizza a Feature list/fr. |
La traduzione del sito Web di FreeCAD viene ora eseguita tramite Crowdin. Il file si chiama homepage.po.
Questa sezione è per gli sviluppatori che desiderano aggiungere la localizzazione al loro codice.
Queste sono le parti del processo di traduzione di FreeCAD:
Tutti i passaggi precedenti sono eseguiti dagli "script di traduzione" che vengono eseguiti periodicamente da un amministratore.
Preparare il modulo per la traduzione è abbastanza semplice. Innanzitutto, è necessario assicurarsi di avere una directory "translations" in myModule/Gui/Resources. Quindi aprire una finestra di terminale (o equivalente in Windows/OSX) nella directory "translations" e inserire il seguente comando:
lupdate -ts myModule.ts
Questo crea un file di traduzione vuoto. Una volta fatto ciò, è necessario assicurarsi che gli script di traduzione siano aggiornati come in questa pull request.
Tutto quello che segue va in automatico per quanto riguarda lo sviluppatore. L'amministratore estrarrà le stringhe di testo, i traduttori le tradurranno, quindi l'amministratore estrarrà le traduzioni e aggiornerà FreeCAD/master.
I moduli o le macro di terze parti vengono tradotti più o meno allo stesso modo, tranne per il fatto che si deve eseguire parte del lavoro da solo. Questa discussione del forum descrive i dettagli.
Aggiornamento: vedere Traduzione di un ambiente di lavoro esterno
Attualmente i manutentori di FreeCAD utilizzano l'API Crowdin tramite Crowdin Scripts per eseguire il pull e il push delle traduzioni in Crowdin e di nuovo nel repository Github. L'API di Crowdin offre ai manutentori di FreeCAD la possibilità di automatizzare aspetti del flusso di lavoro di traduzione del progetto, per maggiori informazioni fare riferimento alla Documentazione dell'API di Crowdin.
Vedere anche: Script di base per FreeCAD.
Per ottenere un dizionario con le lingue supportate dall'interfaccia di FreeCAD, utilizzare il metodo supportedLocales
del modulo FreeCADGui
.
locales = FreeCADGui.supportedLocales()
Dopo l'esecuzione locales
conterrà:
{'English': 'en', 'Afrikaans': 'af', 'Arabic': 'ar', 'Basque': 'eu', 'Catalan': 'ca', 'Chinese Simplified': 'zh-CN', 'Chinese Traditional': 'zh-TW', 'Croatian': 'hr', 'Czech': 'cs', 'Dutch': 'nl', 'Filipino': 'fil', 'Finnish': 'fi', 'French': 'fr', 'Galician': 'gl', 'German': 'de', 'Hungarian': 'hu', 'Indonesian': 'id', 'Italian': 'it', 'Japanese': 'ja', 'Kabyle': 'kab', 'Korean': 'ko', 'Lithuanian': 'lt', 'Norwegian': 'no', 'Polish': 'pl', 'Portuguese': 'pt-PT', 'Portuguese, Brazilian': 'pt-BR', 'Romanian': 'ro', 'Russian': 'ru', 'Slovak': 'sk', 'Slovenian': 'sl', 'Spanish': 'es-ES', 'Swedish': 'sv-SE', 'Turkish': 'tr', 'Ukrainian': 'uk', 'Valencian': 'val-ES', 'Vietnamese': 'vi'}
Per ottenere la lingua dell'interfaccia corrente usa il metodo getLocale
dello stesso modulo:
locale = FreeCADGui.getLocale()
Se la lingua corrente è l'inglese locale
conterrà:
'English'
Per ottenere il language code corrispondente utilizzare:
locale = FreeCADGui.supportedLocales()[Gui.getLocale()]
Se la lingua corrente è l'inglese il risultato sarà:
'en'
Per impostare la lingua dell'interfaccia corrente utilizzare il metodo setLocale
dello stesso modulo. È possibile specificare la lingua o il codice della lingua:
FreeCADGui.setLocale('Russian')
FreeCADGui.setLocale('ru')